import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel
from PyQt5.QtCore import Qt


class Demo(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setGeometry(350, 350, 350, 250)
        self.setWindowTitle('SignalAndSlot3')
        
        self.lab = QLabel('Direction', self)        # 新建一个标签对象，默认显示内容Direction
        self.lab.setGeometry(145, 80, 60, 60)
        
        self.show()
        
    def keyPressEvent(self, e):
        self.lab.setGeometry(165, 80, 60, 60)       # 调整显示位置，如果按下的是方向键就显示
        if e.key() == Qt.Key_Up:
            self.lab.setText('↑')
        elif e.key() == Qt.Key_Down:
            self.lab.setText('↓')
        elif e.key() == Qt.Key_Left:
            self.lab.setText('←')
        elif e.key() == Qt.Key_Right:
            self.lab.setText('→')
        else:     # 调整显示位置，如果按下的是其他键就显示Direction，先调整显示位置
            self.lab.setGeometry(145, 80, 60, 60)
            self.lab.setText('Direction')
        

if __name__ == '__main__':
    app = QApplication(sys.argv)
    demo = Demo()
    sys.exit(app.exec_())